#!/usr/bin/env python
# coding: utf-8

# * 记录人：陈斯敏
# * 时间：2021-11-22
# * week13
# * 主要参考文档：[python官方文档]

# # 上周回顾
# 

# In[ ]:





# In[2]:


广州南方学院 = {'status': '1',
 'regeocode': {'roads': [{'id': '020F49F0050461206',
    'location': '113.678,23.6284',
    'direction': '北',
    'name': '博学路',
    'distance': '7.63232'},
   {'id': '020F49F0050462229',
    'location': '113.679,23.6245',
    'direction': '北',
    'name': '老虎形街',
    'distance': '445.159'},
   {'id': '020F49F0050462451',
    'location': '113.677,23.6347',
    'direction': '南',
    'name': '中山路',
    'distance': '708.299'}],
  'roadinters': [{'second_name': '中山路',
    'first_id': '020F49F0050461206',
    'second_id': '020F49F0050462451',
    'location': '113.676794,23.634661',
    'distance': '708.299',
    'first_name': '博学路',
    'direction': '南'}],
  'formatted_address': '广东省广州市从化区温泉镇博学路',
  'addressComponent': {'city': '广州市',
   'province': '广东省',
   'adcode': '440117',
   'district': '从化区',
   'towncode': '440117100000',
   'streetNumber': {'number': '24号',
    'location': '113.677267,23.629149',
    'direction': '西北',
    'distance': '129.943',
    'street': '博学路'},
   'country': '中国',
   'township': '温泉镇',
   'businessAreas': [[]],
   'building': {'name': [], 'type': []},
   'neighborhood': {'name': [], 'type': []},
   'citycode': '020'},
  'aois': [],
  'pois': [{'id': 'B0FFG4TAF2',
    'direction': '东南',
    'businessarea': [],
    'address': '温泉镇乌土村松浪队5号(近博学路)',
    'poiweight': '0.237309',
    'name': '广州南方公寓',
    'location': '113.678983,23.627778',
    'distance': '102.617',
    'tel': '13622768437',
    'type': '商务住宅;住宅区;住宅小区'},
   {'id': 'B0H6FA18J5',
    'direction': '东南',
    'businessarea': [],
    'address': '从莞深高速(广州南方学院南侧)',
    'poiweight': '0.223065',
    'name': '保利半山花园',
    'location': '113.679358,23.627672',
    'distance': '139.054',
    'tel': [],
    'type': '商务住宅;住宅区;住宅区'},
   {'id': 'B00140TWHT',
    'direction': '北',
    'businessarea': [],
    'address': '笃行路2',
    'poiweight': '0.157653',
    'name': '教工住宅1号',
    'location': '113.678490,23.630432',
    'distance': '222.658',
    'tel': [],
    'type': '商务住宅;住宅区;住宅小区'},
   {'id': 'B0FFHRJDM9',
    'direction': '东南',
    'businessarea': [],
    'address': '中大南方学院南门1号',
    'poiweight': '0.256152',
    'name': '中南公寓',
    'location': '113.680349,23.627573',
    'distance': '231.723',
    'tel': '13711245345',
    'type': '商务住宅;住宅区;住宅小区'},
   {'id': 'B0HGD588HJ',
    'direction': '北',
    'businessarea': [],
    'address': '博学路',
    'poiweight': '0.221662',
    'name': '广州南方学院教学楼4号',
    'location': '113.677460,23.630490',
    'distance': '242.901',
    'tel': [],
    'type': '科教文化服务;学校;学校'},
   {'id': 'B0FFHZH0IK',
    'direction': '西北',
    'businessarea': [],
    'address': '博学路广州南方学院综合楼内',
    'poiweight': '0.17934',
    'name': '地下铁',
    'location': '113.677941,23.629029',
    'distance': '74.1376',
    'tel': [],
    'type': '餐饮服务;冷饮店;冷饮店'},
   {'id': 'B0HGDU76L2',
    'direction': '北',
    'businessarea': [],
    'address': '博学路',
    'poiweight': '0.221662',
    'name': '广州南方学院2号实验楼',
    'location': '113.678211,23.630956',
    'distance': '280.003',
    'tel': [],
    'type': '科教文化服务;学校;学校'},
   {'id': 'B0FFKP838K',
    'direction': '北',
    'businessarea': [],
    'address': '博学路25',
    'poiweight': '0.191742',
    'name': '教学楼3号(外国语学院)',
    'location': '113.677247,23.630947',
    'distance': '298.093',
    'tel': [],
    'type': '科教文化服务;学校;高等院校'},
   {'id': 'B0HGDU8NLD',
    'direction': '北',
    'businessarea': [],
    'address': '博学路附近',
    'poiweight': '0.221662',
    'name': '广州南方学院1号实验楼',
    'location': '113.678215,23.631370',
    'distance': '326.007',
    'tel': [],
    'type': '科教文化服务;学校;学校'},
   {'id': 'B0HGD58UTU',
    'direction': '西北',
    'businessarea': [],
    'address': '博学路',
    'poiweight': '0.191229',
    'name': '广州南方学院2号教学楼',
    'location': '113.677060,23.631346',
    'distance': '346.352',
    'tel': [],
    'type': '科教文化服务;学校;学校'},
   {'id': 'B00140MR9A',
    'direction': '北',
    'businessarea': [],
    'address': '温泉大道882号',
    'poiweight': '0.450402',
    'name': '广州南方学院',
    'location': '113.679262,23.632583',
    'distance': '471.564',
    'tel': '020-87828988;020-61787331',
    'type': '科教文化服务;学校;高等院校'},
   {'id': 'B0HGDU92JD',
    'direction': '北',
    'businessarea': [],
    'address': [],
    'poiweight': '0.221662',
    'name': '广州南方学院教学楼1号',
    'location': '113.677077,23.631783',
    'distance': '391.548',
    'tel': [],
    'type': '科教文化服务;学校;学校'},
   {'id': 'B0HGD592BJ',
    'direction': '东北',
    'businessarea': [],
    'address': '温泉大道886号广州南方学院内',
    'poiweight': '0.221662',
    'name': '广州南方学院综合楼',
    'location': '113.680117,23.631544',
    'distance': '392.731',
    'tel': [],
    'type': '科教文化服务;学校;学校'},
   {'id': 'B0FFKP81F0',
    'direction': '西北',
    'businessarea': [],
    'address': '博学路19号附近',
    'poiweight': '0.191742',
    'name': '教学楼1号(文学与传媒学院)',
    'location': '113.676866,23.631736',
    'distance': '393.93',
    'tel': [],
    'type': '科教文化服务;科教文化场所;科教文化场所'},
   {'id': 'B0FFLBEOND',
    'direction': '东北',
    'businessarea': [],
    'address': '从莞深高速(广州南方学院)',
    'poiweight': '0.190963',
    'name': '聚贤楼10号',
    'location': '113.681253,23.631036',
    'distance': '418.51',
    'tel': [],
    'type': '商务住宅;住宅区;宿舍'},
   {'id': 'B0FFH6K3U9',
    'direction': '西北',
    'businessarea': [],
    'address': '温泉镇温泉大道882号广州南方学院H7栋1-5层',
    'poiweight': '0.254885',
    'name': '广州中大南方招待所',
    'location': '113.676330,23.631332',
    'distance': '378.102',
    'tel': '020-61787222',
    'type': '住宿服务;住宿服务相关;住宿服务相关'},
   {'id': 'B0HGD58NF8',
    'direction': '北',
    'businessarea': [],
    'address': '温泉大道882号广州南方学院新综合楼2层',
    'poiweight': '0.191229',
    'name': '广州南方学院达人书院',
    'location': '113.679041,23.632392',
    'distance': '446.366',
    'tel': [],
    'type': '科教文化服务;科教文化场所;科教文化场所'},
   {'id': 'B0FFKUVYWV',
    'direction': '东北',
    'businessarea': [],
    'address': '保利桃花源',
    'poiweight': '0.273168',
    'name': '广州和风庭阿七度假别墅',
    'location': '113.681736,23.630569',
    'distance': '424.35',
    'tel': '18681565305',
    'type': '住宿服务;住宿服务相关;住宿服务相关'},
   {'id': 'B0HGDU99RM',
    'direction': '北',
    'businessarea': [],
    'address': '温泉大道882号广州南方学院内',
    'poiweight': '0.257947',
    'name': '广州南方学院图书馆',
    'location': '113.679177,23.632762',
    'distance': '489.331',
    'tel': '020-61787368;020-61787371',
    'type': '科教文化服务;图书馆;图书馆'},
   {'id': 'B0HGDU92JC',
    'direction': '北',
    'businessarea': [],
    'address': '博学路附近',
    'poiweight': '0.221662',
    'name': '广州南方学院4号实验楼',
    'location': '113.679963,23.632652',
    'distance': '498.883',
    'tel': [],
    'type': '科教文化服务;学校;学校'},
   {'id': 'B0FFL7C054',
    'direction': '北',
    'businessarea': [],
    'address': '温泉镇博学路882号(广州南方学院商业中心1层)',
    'poiweight': '0.317505',
    'name': '广州U优森特酒店',
    'location': '113.679226,23.632528',
    'distance': '464.819',
    'tel': '15813395296',
    'type': '住宿服务;住宿服务相关;住宿服务相关'},
   {'id': 'B0FFG8CSEK',
    'direction': '东北',
    'businessarea': [],
    'address': '从莞深高速(广州南方学院)',
    'poiweight': '0.185371',
    'name': 'L5员工宿舍',
    'location': '113.682583,23.631487',
    'distance': '554.129',
    'tel': [],
    'type': '商务住宅;住宅区;宿舍'},
   {'id': 'B0HGD58FR2',
    'direction': '北',
    'businessarea': [],
    'address': '广州南方学院',
    'poiweight': '0.221662',
    'name': '广州南方学院教学楼9号',
    'location': '113.679747,23.633032',
    'distance': '532.163',
    'tel': [],
    'type': '科教文化服务;学校;学校'},
   {'id': 'B0HG5Z9JNK',
    'direction': '北',
    'businessarea': [],
    'address': '博学路',
    'poiweight': '0.221553',
    'name': '广州南方学院教学楼7号',
    'location': '113.678600,23.633330',
    'distance': '544.868',
    'tel': [],
    'type': '科教文化服务;学校;学校'},
   {'id': 'B0HGD599JM',
    'direction': '北',
    'businessarea': [],
    'address': '温泉大道882号广州南方学院',
    'poiweight': '0.221662',
    'name': '广州南方学院第11教学楼',
    'location': '113.680037,23.633173',
    'distance': '556.036',
    'tel': [],
    'type': '科教文化服务;学校;学校'},
   {'id': 'B0GUJYPEG2',
    'direction': '北',
    'businessarea': [],
    'address': '温泉大道882号广州南方学院内博学路6号之3',
    'poiweight': '0.216026',
    'name': '怒烤烤串(从化店)',
    'location': '113.677160,23.632910',
    'distance': '510.112',
    'tel': [],
    'type': '餐饮服务;中餐厅;特色/地方风味餐厅'},
   {'id': 'B0HGDU6Z41',
    'direction': '北',
    'businessarea': [],
    'address': '温泉大道882',
    'poiweight': '0.221662',
    'name': '广州南方学院教学楼6号',
    'location': '113.678424,23.633710',
    'distance': '586.331',
    'tel': [],
    'type': '科教文化服务;学校;学校'},
   {'id': 'B0HGD580NZ',
    'direction': '北',
    'businessarea': [],
    'address': '博学路7号附近',
    'poiweight': '0.285712',
    'name': '广州南方学院惟贤门',
    'location': '113.678437,23.633721',
    'distance': '587.601',
    'tel': [],
    'type': '科教文化服务;学校;高等院校'},
   {'id': 'B0HGDU7T1K',
    'direction': '北',
    'businessarea': [],
    'address': '从莞深高速(广州南方学院)',
    'poiweight': '0.191229',
    'name': '广州南方学院教学楼10号',
    'location': '113.680125,23.633492',
    'distance': '592.504',
    'tel': [],
    'type': '科教文化服务;科教文化场所;科教文化场所'},
   {'id': 'B0HGDU76L1',
    'direction': '北',
    'businessarea': [],
    'address': '中山路与博学路交叉口东南150米',
    'poiweight': '0.221662',
    'name': '广州南方学院教学楼5号',
    'location': '113.678046,23.633982',
    'distance': '616.848',
    'tel': [],
    'type': '科教文化服务;学校;学校'}]},
 'info': 'OK',
 'infocode': '10000'}


# In[3]:


# 1.先从keys和values 来观察字典
# keys: 有多少关键字属性 values：可以观察具体的属性内容
广州南方学院.keys()


# In[4]:


广州南方学院['status']


# In[5]:


广州南方学院[ 'info']


# In[6]:


广州南方学院['infocode']


# In[12]:


广州南方学院_regeocode = 广州南方学院['regeocode']  # 找到核心数据
# 广州南方学院_regeocode


# In[13]:


广州南方学院['regeocode'].keys()


# > 1. aois
# > 2. pois

# In[14]:


广州南方学院_regeocode['roads']


# In[16]:


广州南方学院_regeocode['roadinters']


# In[17]:


广州南方学院_regeocode['formatted_address']


# In[18]:


广州南方学院_regeocode['addressComponent']


# In[19]:


广州南方学院_regeocode['aois']


# In[ ]:





# In[15]:


pois_list = 广州南方学院['regeocode']['pois']
for i in pois_list:
    if i["id"] == 'B0HGD588HJ':
        print(i)


# In[20]:


广州南方学院_regeocode_pois = 广州南方学院_regeocode['pois']
# 广州南方学院_regeocode_pois


# In[21]:


# 操作列表
# 1。查看列表的长度 len()
# 2.查看其中一个数据，数据的形式和属性

len(广州南方学院_regeocode_pois)


# In[22]:


广州南方学院_regeocode_pois[0]


# In[24]:


# 2. 请找出所有的 pois 中的字典元素 的 id，存到一个id列表中
id_list = []
for i in 广州南方学院_regeocode_pois:
#     print(i['id'])
    id_list.append(i['id'])
id_list 


# In[27]:


# 3. 请找出所有的 pois 中的字典元素 的 name
for i in 广州南方学院_regeocode_pois:
    print(i['name'])


# In[29]:


# 4.请找出所有教学楼 在上题多一步筛选if
for i in 广州南方学院_regeocode_pois:
    if '教学楼' in i['name']:
        print(i['name'])


# In[32]:


# 5，请找出所有朝向为北的教学楼
for i in 广州南方学院_regeocode_pois:
    if '教学楼' in i['name']:
        if i['direction'] == '西北':
             print(i['name'])


# # 4.集合
# 
# > 1.[集合]( https://docs.python.org/3/turorial/datadtructures.html#sets )的概念
# > 2.集合的形式：{value1,value2,value3....}
# > 3.集合的性质
# >> 1.唯一性（去除重复项）
# >> 2.可变性（可使用方法对集合进行操作，如增删改查）
# >> 3.无序
# >> 4.集合可以用 in 进行成员查询

# In[13]:


basket = {'apple','orange','apple','pear','orange','banana'}


# In[14]:


print(type(basket),'\n',basket)


# ## 1,集合的运算
# > 1.交集运算 intersection()
# >> 1.intersection()
# >> 2.set1 & set2

# In[2]:


list_1=[1,2,5,6,7,2,3,2,4,4]
set_1 = set(list_1)  #list to set 的方法 set（list)


# In[3]:


set_1


# In[4]:


set_2 = set([1,3,4,0,8,66,7])
set_2


# In[5]:


help(set_1.intersection)


# In[6]:


# 方法一：
new_intersection = set_1.intersection(set_2)
new_intersection


# In[7]:


# 方法二：
set_1 & set_2


# In[ ]:





# > 2.并集运算
# >> 1.union()
# >>2.set1 | set2

# In[23]:


help(set_1.union)


# In[27]:


set_1


# In[28]:


set_2


# In[30]:


#方法一
set_1.union(set_2)


# In[38]:


#方法二
set_1 | set_2


# > 3.差集运算 : 注意 ： 差集运算考虑先后顺序
# >> 1.set1.difference(set2)
# >> 2.set1-set_2

# In[32]:


set_1


# In[34]:


set_2


# In[37]:


set_1 - set_2


# In[36]:


set_1.difference(set_2)


# In[39]:


set_2.difference(set_1)


# > 4.对称差集 symmetric_difference()

# In[40]:


set_1


# In[41]:


set_2


# In[42]:


set_1.symmetric_difference(set_2)


# In[43]:


set_2.symmetric_difference(set_1)


# In[ ]:





# # 2.集合的一般方法
# 

# In[33]:


set_3 = set([1,3,4,0,8,66,7])


# >> 1.增加 add()

# In[34]:


help(set_3.add)


# In[35]:


set_3.add(9)


# In[36]:


print(set_3)


# In[37]:


set_3.add(66)


# In[38]:


print(set_3)


# >> 2.删除（ 先 用 in 查看成员是否存在）
# pop() : Remove and return an arbitrary(任意的) set element
# remove(member) 好像很多余？
# discard(member) 不会报 KeyError 错误

# In[39]:


help(set_3.pop)


# In[40]:


set_3.pop()


# In[41]:


print(set_3)


# In[42]:


help(set_3.remove)


# In[43]:


if 66 in set_3:
    set_3.remove(66)


# In[44]:


set_3


# In[45]:


help(set_3.discard)


# In[46]:


set_3.discard(9)


# In[47]:


set_3


# # 5. 集合实践（课本）

# In[48]:


vowels = set('aeiou')
word = input("Provide a word to search for vowels:")
found = vowels.intersection(set(word))
found


# In[ ]:




